fc1804db8a0ae70cbceb1e66a28577d80e86d2a2
[git-annex.git] /
1 [[!comment format=mdwn
2  username="joey"
3  subject="""comment 19"""
4  date="2023-06-08T21:14:35Z"
5  content="""
6 I ran the second test case with 150000 files, and here's how long the syncs
7 took:
8
9 1. 0m0.170s
10 2. 33m37.810s
11 3. 0m36.644s
12 4. 2m58.773s
13 5. 13m38.126s
14 6. 0m3.933s
15 7. still running after 85 minutes
16 8. tbd
17
18 Sync 2 took longer than your results in comment #11, but consistent with my
19 laptop being slower. And I think 33 minutes to import 150k files is fine.
20
21 Still not seeing sync 5 take as long as it did for you.
22 Nowhere in the same ballpark. 13 minutes seems ok for a sync --content
23 that has to scan 150000 files.
24
25 The 7th sync is seeming too slow to me. For you it took equally long as the
26 5th sync, and both are --content syncs. So maybe I'm seeing the same
27 problem but only on the 7th for some reason?
28
29 For me it seemed to take a long time after outputting "list source ok". At
30 that point strace showed only a lot of futex(). And the cpu was pegged. And
31 it had the cidsdb open. Hmmm.. This is feeling a bit like the problem you
32 originally reported.
33
34 Interrupted the 7th sync and ran again...
35
36 The "list source" takes more than 15 minutes. It's bottlenecked on checking
37 git ignores. Bottleneck that I didn't notice with a smaller
38 number of files. Fixed that by making sure the export db was
39 populated, which it usually is, but not in the 7th sync's situation.
40 Now "list source" completes in less than 2 minutes.
41
42 And.. after that, it was back to the tight futex() loop.. And this time I
43 had intrumented the cidsdb, and it was importKeys
44 calling getContentIdentifierKeys.
45
46 Here's the kicker: It's only running getContentIdentifierKeys 15 times 
47 per second. So that will take 166 minutes for all 150000 files.
48
49 Each call to getContentIdentifierKeys is taking 0.05 seconds.
50 So, this bug is back to the original problem of being bottlenecked on the
51 cidsdb. And it is smelling like a lack of indexes. Yay!
52 """]]